<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* *{}
        li{}
        #wrap{}
        .list{}
        .one li{} */
    </style>
</head>
<body>
    <div id="wrap">
        <h2>哈哈哈哈</h2>
        <ul class="list one" title="">
            <li id="first1">01</li>
            <li class="second">02</li>
            <li>03</li>
            <li name="last">04</li>
        </ul>
        <ul class="list two" title="">
            <li id="first2">01</li>
            <li class="second">02</li>
            <li>03</li>
            <li name="last">04</li>
        </ul>
    </div>
</body>
<script>
    // 获取元素节点的方法 

    // 1. (通过文档获取 页面所有的元素 => 范围太大了)
    // document.getElementById();          在文档中,通过id名获取元素  取得到=>元素 取不到:null
    // document.getElementsByClassName()   在文档中,通过class名获取元素  取得到=>集合 取不到:[]
    // document.getElementsByTagName();    在文档中,通过标签名获取元素  取得到=>集合 取不到:[]
    // document.getElementsByName()        在文档中,通过name属性获取元素  取得到=>集合 取不到:[]  (一般用于表单元素)

    // 2. 是否可以通过父元素来获取对应的子代元素  (限制查询范围)
    // 可以通过父元素  来 获取子代元素  =>有局限性 (只能通过父元素获取 getElementsByClassName getElementsByTagName)
    // parent.getElementsByClassName()
    // parent.getElementsByTagName()

    // 3. 传入一个css选择器(css2 css3 =>字符串) 
    // document.querySelector(selector);     单元素获取,单个元素=>直接返回   多个元素 => 默认返回集合中第一个
    // document.querySelectorAll(selector);  多元素获取 => 集合;  即便只有一个也会放到集合中(id也是如此)

    // 单元素获取
    var wrap = document.querySelector("#wrap");
    console.log(wrap);

    var one = document.querySelector(".one");
    console.log(one);

    var li = document.querySelector(".one li");   // 多个元素 => 默认返回集合中第一个
    console.log(li);


    // 多元素获取
    var wrapList = document.querySelectorAll("#wrap");
    console.log(wrapList);

    var oneList = document.querySelectorAll(".one");
    console.log(oneList);

    var liList = document.querySelectorAll(".one li");   // 多个元素 => 默认返回集合中第一个
    console.log(liList);

    var liList = document.querySelectorAll("li[class]");
    console.log(liList);

   


</script>
</html>